رایانه یا کامپیوتر دستگاهی است که برای پردازش اطلاعات تحت یک روال معین استفاده می شود.
● واژه کامپیوتر
مدتی در فارسی به کامپیوتر «مغز الکترونیکی» می گفتند. بعد از ورود این دستگاه به ایران در اوایل دهه ۱۳۴۰ نام کامپیوتر به کار رفت. واژه رایانه در دو دهه اخیر رایج شده و به تدریج جای کامپیوتر را می گیرد. واژه رایانه پارسی است و از فعل پارسی رایاندن به معنی سامان دادن و مرتب کردن آمده. معنی واژگانی رایانه می شود ابزار دسته بندی و ساماندهی.
در زبان انگلیسی طی سالیان متمادی واژه های هم ارزش بسیاری برای این واژه بکار می رفته، و کلمات دیگری نیز وجود داشته اند که از آنها به عنوان کامپیوتر یاد می شود اما معانی متفاوتی را در خود داشته اند. یف شاعرانه تری بکار می رود، tölva که واژه ایست مرکب و به معنای «زن پیشگوی شمارشگر!» می باشد. در چینی رایانه dian nao یا «مغز برقی» خوانده می شود. در انگلیسی واژه ها و تعابیر گوناگونی استفاده می شود، به عنوان مثال دستگاه داده پرداز یا data processing machine
● تعریف ها
با تعریف های بالا می توان به همهٔ ماشین های مکانیکی محاسبه مانند خط کش محاسبه و یا چرتکه نیز به همان صورت که برای ماشین های امروزی به کار می رود، رایانه گفت. البته عبارات و واژه های بهتری نیز می تواند توصیف فعالیت های این ماشین ها باشند، واژه هایی مانند: داده پرداز، سامانه های پردازش اطلاعات و همچنین کنترل گر.
هنگامی که رایانه های امروزی را درنظر می گیریم، اغلب ویژگی درخور نگرشی می توانند تمامی ویژگی که در سایر دستگاهها پردازشی که اختراع می شوند تقلید نمایند (به هر حال یقینا با سرعت پایین تر). گهگاه، این آستانه قابلیت یک محک سودمند برای شناسایی «رایانه های همه کاره» از ابزارهای با کارایی ویژه قدیمی می باشد. این تعریف «همه کاره» می تواند بصورت رسمی در این تعریف که یک ماشین معین باید بتواند رفتارهای ماشین تورینگ (Turing machine) را تقلید نماید، بکار گرفته شود. ماشینهایی که این نیازمندی را تأمین کرده باشند به عنوان تورینگ کامل (Turing-complete) خطاب می شوند. تا هنگامی که بصورت فیزیکی تأمین فضای ذخیره نامتناهی و احتمال zero crashing وجود نداشته باشد لفظ تورینگ کامل بصورت آسان گیرانه ای به ماشین با ظرفیت ذخیره سازی بالا (نامتناهی) و با قابلیت اطمینان واقعی، گفته می شود. نخستین سری از این ماشینها در سال ۱۹۴۱ بوجود آمد: Z۳ ساخت کونراد زوسه (Konrad Zuse)که توسط برنامه کنترل می شد(اما ویژگی تورینگ کامل آن در سال ۱۹۹۸ به آن داده شد.). ماشین های دیگری نیز بصورت آشفته و با عجله در سراسر دنیا توسعه یافتند. برای اطلاعات بیشتر به تاریخچه رایانه نگاه کنید.
● تاریخچه
لایبنیتز (leibniz) ریاضی دان آلمانی از نخستین کسانی است که در ساختن یک دستگاه خودکار محاسبه کوشش کرد. او که به پدر حسابدارش در تنظیم حساب ها کمک می کرد، از زمانی که برای انجام محاسبات صرف می کرد گله مند بود.
چارلز بابیج (Charles Babbage) یکی از اولین ماشینهای محاسبه مکانیکی را که به آن ماشین تحلیلی گفته می شد، طراحی نمود، اما بخاطر مشکلات فنی موجود در زمان حیاتش همچون ماشینی ساخته نشد(در سال ۱۹۹۳ در موزه علوم لندن مدلی که بر اساس طرح بابیج کار می کرد ساخته شد).
در گذشته دستگاههای مختلف مکانیکی ساده ای مثل خط کش محاسبه و چرتکه نیز کامپیوتر خوانده می شدند. در برخی موارد از آنها به عنوان رایانه های آنالوگ نام برده می شود. چراکه برخلاف رایانه های رقمی، اعداد را نه به صورت اعداد در پایه دو بلکه به صورت کمیتهای فیزیکی متناظر با آن اعداد نمایش می دهند. چیزی که امروزه از آن به عنوان «رایانه» یاد می شود در گذشته به عنوان «رایانه های رقمی (دیجیتال)» یاد می شد تا آنها را از انواع «رایانه های آنالوگ» جدا سازد(که هنوز در برخی موارد استفاده می شود مثلاً نشانک پرداز آنالوگ یا analog signal processing
● رایانه ها چگونه کار می کنند ؟
از زمان رایانه های اولیه که از سال ۱۹۴۱ تا کنون فناوری های دیجیتالی بصورت شگرفی رشد نموده است، اغلب رایانه ها از معماری فون نویمن که در اواخر دهه ۱۹۴۰ از سوی جان فون نویمن ابداع گردید سود می جویند.
معماری فون نوِیمن یک رایانه را به چهار بخش اصلی توصیف می کند: واحد محاسبه و منطق (Arithmetic and Logic Unit یا ALU)، واحد کنترل یا حافظه، و ابزارهای ورودی و خروجی (که جمعا I/O نامیده می شود). این بخش ها توسط اتصالات داخلی سیمی به نام گذرگاه (bus) با یکدیگر در پیوند هستند.
● حافظه
در این سامانه، حافظه یک توالی شماره گذاری شده از خانه ها است، هرکدام محتوی بخش کوچکی از داده ها می باشند. داده ها ممکن است دستورالعملهایی باشند که به رایانه می گویند چه کاری را انجام دهد باشد. خانه ممکن است حاوی اطلاعات مورد نیاز یک دستورالعمل باشد.
محتوای هر خانه حافظه ممکن است هر زمان تغییر یابد و بیشتر شبیه دفتر چرک نویس می ماند تا یک لوح سنگی.
اندازه هر خانه، وتعداد خانه ها، در رایانهٔ مختلف متفاوت است، همچنین فناوریهای بکاررفته برای اجرای حافظه نیز از رایانه ای به رایانه دیگر در تغییر است(از بازپخش کننده های الکترومکانیکی تا تیوپها و فنرهای پر شده از جیوه و یا ماتریس های ثابت مغناطیسی و در آخر ترانزیستورهای واقعی و مدار مجتمعها با میلیونها خازن روی یک تراشه تنها).
● پردازش
واحد محاسبه و منطق یا ALU دستگاهی است که عملیات پایه مانند چهار عمل اصلی حساب (جمع و تفریق و ضرب و تقسیم)، عملیات منطقی (و،یا،نقیض)، عملیات قیاسی (برای مثال مقایسه دو بایت برای شرط برابری) و دستورات انتصابی برای مقدار دادن به یک متغیر را انجام می دهد. این واحد جاییست که «کار واقعی» در آن صورت می پذیرد. البته CPUها به دو دسته کلی RISC و CISC تقسیم بندی می شوند. نوع اول پردازش گرهای مبتنی بر اعمال ساده هستند و نوع دوم پردازشگرهای مبتنی بر اعمال پیچیده هستند. پردازشگرهای مبتنی بر اعمال پیچیده در واحد محاسبه و منطق خود دارای اعمال و دستوراتی بسیار فراتر از چهار عمل اصلی یا منطقی می باشند. تنوع دستورات این دسته از پردازنده ها تا حدی است که توضیحات آن ها خود می تواند یک کتاب با قطر متوسط ایجاد کند. پردازنده های مبتنی بر اعمال ساده اعمال بسیار کمی را پوشش می دهند و در حقیقت برای برنامه نویسی برای این پردازنده ها بار نسبتاً سنگینی بر دوش برنامه نویس است. این پردازنده ها تنها حاوی ۴ عمل اصلی و اعمال منطقی ریاضی و مقایسه ای به علاوه چند دستور بی اهمیت دیگر هستند.
(قابل ذکر است پردازنده های اینتل از نوع پردازنده مبتنی بر اعمال پیچیده هستند.)
واحد کنترل همچنین این مطلب را که کدامین بایت از حافظه حاوی دستورالعمل فعلی اجرا شونده است را تعقیب می کند، سپس به واحد محاسبه و منطق اعلام می کند که کدام عمل اجرا و از حافظه دریافت شود و نتایج به بخش اختصاص داده شده از حافظه ارسال گردد. بعد از یک بار عمل، واحد کنترل به دستورالعمل بعدی ارجاع می کند(که معمولاً در خانه حافظه بعدی قرار دارد، مگر اینکه دستورالعمل جهش دستورالعمل بعدی باشد که به رایانه اعلام می کند دستورالعمل بعدی در خانه دیگر قرارگرفته است).
● ورودی/خروجی
بخش ورودی/خروجی (I/O) این امکان را به رایانه می دهد تا اطلاعات را از جهان بیرون تهیه و نتایج آنها را به همان جا برگرداند. محدوده فوق العاده وسیعی از دستگاههای ورودی/خروجی وجود دارد، از خانواده آشنای صفحه کلیدها، نمایشگرها، نَرم دیسک گرفته تا دستگاههای کمی غریب مانند رایابین ها (webcams).
چیزی که تمامی دستگاههای عمومی در آن اشتراک دارند این است که آنها رمز کننده اطلاعات از نوعی به نوع دیگر که بتواند مورد استفاده سیستم های رایانه دیجیتالی قرار گیرد، هستند. از سوی دیگر، دستگاههای خروجی آن اطلاعات به رمز شده را رمزگشایی می کنند تا کاربران آنها را دریافت نمایند. از این رو یک سیستم رایانه دیجیتالی یک نمونه از یک سامانه داده پردازی می باشد.
● دستورالعملها
هر رایانه تنها دارای یک مجموعه کم تعداد از دستورالعملهای ساده و تعریف شده می باشد. از انواع پرکاربردشان می توان به دستورالعمل «محتوای خانه ۱۲۳ را در خانه ۴۵۶ کپی کن!»، «محتوای خانه ۶۶۶ را با محتوای خانه ۰۴۲ جمع کن، نتایج را در خانه ۰۱۳ کن!»، «اگر محتوای خانه ۹۹۹ برابر با صفر است، به دستورالعمل واقع در خانه ۳۴۵ رجوع کن!».
دستورالعمل ها در داخل رایانه بصورت اعداد مشخص شده اند - مثلاً کد دستور العمل (copy instruction) برابر ۰۰۱ می تواند باشد. مجموعه معین دستورالعمل های تعریف شده که توسط یک رایانه ویژه پشتیبانی می شود را زبان ماشین می نامند. در واقعیت، اشخاص معمولاً به [زبان ماشین]] دستورالعمل نمی نویسند بلکه بیشتر به نوعی از انواع سطح بالای زبانهای برنامه نویسی، برنامه نویسی می کنند تا سپس توسط برنامه ویژه ای (تفسیرگرها (interpreters) یا همگردانها (compilers) به دستورالعمل ویژه ماشین تبدیل گردد. برخی زبانهای برنامه نویسی از نوع بسیار شبیه و نزدیک به زبان ماشین که اسمبلر (یک زبان سطح پایین) نامیده می شود، استفاده می کنند؛ همچنین زبانهای سطح بالای دیگری نیز مانند پرولوگ نیز از یک زبان انتزاعی و چکیده که با زبان ماشین تفاوت دارد بجای دستورالعمل های ویژه ماشین استفاده می کنند.
● معماری ها
در رایانه های معاصر واحد محاسبه و منطق(ICU) را به همراه واحد کنترل در یک مدار مجتمع که واحد پردازشی مرکزی (CPU) نامیده می شود، جمع نموده اند. عموما، حافظه رایانه روی یک مدار مجتمع کوچک نزدیک CPU قرار گرفته. اکثریت قاطع بخش های رایانه تشکیل شده اند از سامانه های فرعی (به عنوان نمونه، منبع تغذیه) و یا دستگاههای ورودی/خروجی.
برخی رایانه های بزرگ تر چندین CPU و واحد کنترل دارند که بصورت هم زمان با یکدیگر درحال کارند. این گونه رایانه ها بیشتر برای کاربردهای پژوهشی و محاسبات علمی بکار می روند.
کارایی رایانه ها بنا به تیوری کاملاً درست است. رایانه داده ها و دستورالعمل ها را از حافظه اش واکشی (fetch) می کند. دستورالعمل ها اجرا می شوند، نتایج ذخیره می شوند، دستورالعمل بعدی واکشی می شود. این رویه تا زمانی که رایانه خاموش شود ادامه پیدا می کند. واحد پردازنده مرکزی در رایانه های شخصی امروزی مانند پردازنده های شرکت ای-ام-دی و شرکت اینتل از معماری موسوم به Pipeline استفاده می شود و در زمانی که پردازنده در حال ذخیره نتیجه یک دستور است مرحله اجرای دستور قبلی و مرحله واکشی دستور قبل از آن را آغاز می کند. همچنین این رایانه ها از سطوح مختلف حافظه نهانگاهی استفاده می کنند که در زمان دسترسی به حافظه اصلی صرفه جویی کنند.
● برنامه ها
برنامه رایانه ای فهرست های بزرگی از دستورالعمل ها (احتمالاً به همراه جدول هایی از داده) برای اجرا روی رایانه هستند. خیلی از رایانه ها حاوی میلیونها دستورالعمل هستند، و بسیاری از این دستورات به تکرار اجرا می شوند. یک رایانه شخصی(PC) نوین نوعی (درسال ۲۰۰۳) می تواند در ثانیه میان ۲ تا ۳ میلیارد دستورالعمل را پیاده نماید. رایانه ها این مقدار محاسبه را صرف انجام دستورالعمل های پیچیده نمی کنند. بیشتر میلیونها دستورالعمل ساده را که توسط اشخاص باهوشی «برنامه نویسان» در کنار یکدیگر چیده شده اند را اجرا می کنند. برنامه نویسان خوب مجموعه هایی از دستورالعمل ها را توسعه می دهند تا یکسری از وظایف عمومی را انجام دهند(برای نمونه، رسم یک نقطه روی صفحه) و سپس آن مجموعه دستورالعمل ها را برای دیگر برنامه نویسان در دسترس قرار می دهند.(اگر مایلید «یک برنامه نویس خوب» باشید به این مطلب مراجعه نمایید.)
رایانه های امروزه، قادرند چندین برنامه را در آن واحد اجرا نمایند. از این قابلیت به عنوان چندکارگی (multitasking) نام برده می شود. در واقع، CPU یک رشته دستورالعمل ها را از یک برنامه اجرا می کند، سپس پس از یک مقطع ویژه زمانی دستورالعمل هایی از یک برنامه دیگر را اجرا می کند. این فاصله زمانی اکثرا به عنوان یک برش زمانی (time slice) نام برده می شود. این ویژگی که CPU زمان اجرا را بین برنامه ها تقسیم می کند، این توهم را بوجود می آورد که رایانه هم زمان مشغول اجرای چند برنامه است. این شبیه به چگونگی نمایش فریمهای یک فیلم است، که فریمها با سرعت بالا در حال حرکت هستند و به نظر می رسد که صفحه ثابتی تصاویر را نمایش می دهد. سیستم عامل همان برنامه ای است که این اشتراک زمانی را بین برنامه های دیگر تعیین می کند.
● سیستم عامل
رایانه همیشه نیاز دارد تا برای بکارانداختنش حداقل یک برنامه روی آن در حال اجرا باشد. تحت عملکردهای عادی این برنامه همان سیستم عامل یا OS است. سیستم یا سامانه عامل تصمیم می گیرد که کدام برنامه اجرا شود، چه زمان، از کدام منابع (مثل حافظه، ورودی/خروجی و …) استفاده شود. همچنین سیستم عامل یک لایه انتزاعی بین سخت افزار و برنامه های دیگر که می خواهند از سخت افزار استفاده کنند، می باشد، که این امکان را به برنامه نویسان می دهد تا بدون اینکه جزییات ریز هر قطعه الکترونیکی از سخت افزار را بدانند بتوانند برای آن قطعه برنامه نویسی نمایند.
● کاربردهای رایانه
نخستین رایانه های رقمی، با قیمتهای زیاد و حجم بزرگشان، در اصل محاسبات علمی را انجام می دادند، انیاک یک رایانه قدیمی ایالات متحده اصولا طراحی شده تا محاسبات پرتابه ای توپخانه و محاسبات مربوط به جدول چگالی نوترونی را انجام دهد. (این محاسبات بین دسامبر ۱۹۴۱ تا ژانویه ۱۹۴۶ روی حجمی بالغ بر یک میلیون کارت پانچ انجام پذیرفت! که این خود طراحی و سپس تصمیم نادرست بکارگرفته شده را نشان می دهد) بسیاری از ابررایانه های امروزی صرفاً برای کارهای ویژه محاسبات جنگ افزار هسته ای استفاده می گردد.
CSIR Mk I نیز که نخستین رایانه استرالیایی بود برای ارزیابی میزان بارندگی در کوههای اسنویی (Snowy)این کشور بکاررفت، این محاسبات در چارچوب یک پروژه عظیم تولید برقابی انجام گرفت.
برخی رایانه ها نیز برای انجام رمزگشایی بکارگرفته می شد، برای مثال Colossus که در جریان جنگ جهانی دوم ساخته شد، جزو اولین کامپیوترهای برنامه پذیر بود(البته ماشین تورینگ کامل نبود). هرچند رایانه های بعدی می توانستند برنامه ریزی شوند تا شطرنج بازی کنند یا تصویر نمایش دهند و سایر کاربردها را نشان دهد.
سیاستمداران و شرکتهای بزرگ نیز رایانه های اولیه را برای خودکارسازی بسیاری از مجموعه های داده و پردازش کارهایی که قبلا توسط انسان ها انجام می گرفت،بکاربستند - برای مثال، نگهداری و بروزرسانی حسابها و دارایی ها. در موسسات پژوهشی نیز دانشمندان رشته های مختلف شروع به استفاده از رایانه برای مقاصدشان نمودند.
کاهش پیوسته قیمتهای رایانه باعث شد تا سازمانهای کوچک تر نیز بتوانند آنها را در اختیار بگیرند. بازرگانان، سازمانها، و سیاستمداران اغلب تعداد زیادی از کامپیوترهای کوچک را برای تکمیل وظایفی که قبلا برای تکمیلشان نیاز به رایانه بزرگ (mainframe) گران قیمت و بزرگ بود، به کار بگیرند. مجموعه هایی از رایانه های کوچک تر در یک محل اغلب به عنوان خادم سرا (server farm) نام برده می شود.
با اختراع ریزپردازندهها در دهه ۱۹۷۰ این امکان که بتوان رایانه هایی بسیار ارزان قیمت را تولید نمود بوجود آمد. رایانه های شخصی برای انجام وظایف بسیاری محبوب گشتند، از جمله کتابداری، نوشتن و چاپ مستندات. محاسبات پیش بینی ها و کارهای تکراری ریاضی توسط صفحات گسترده (spreadsheet)، ارتباطات توسط پست الکترونیک، و اینترنت. حضورگسترده رایانه ها و سفارشی کردن آسانشان باعث شد تا در امورات بسیار دیگری بکارگرفته شوند.
در همان زمان، رایانه های کوچک، که معمولاً با یک برنامه ثابت ارایه می شدند، راهشان را بسوی کاربردهای دیگری بازمی نمودند، کاربردهایی چون لوازم خانگی، خودروها، هواپیماها، و ابزار صنعتی. این پردازشگرهای جاسازی شده کنترل رفتارهای آن لوازم را ساده تر کردند، همچنین امکان انجام رفتارهای پیچیده را نیز فراهم نمودند (برای نمونه، ترمزهای ضدقفل در خودروها). با شروع قرن بیست و یکم، اغلب دستگاههای الکتریکی، اغلب حالتهای انتقال نیرو، اغلب خطوط تولید کارخانه ها توسط رایانه ها کنترل می شوند. اکثر مهندسان پیش بینی می کنند که این روند همچنان به پیش برود. یکی از کارهایی که می توان به وسیله رایانه انجام داد پروگرام گیرنده ماهواره است.
● گونه های رایانه
▪ رایانه های توکار
در ۲۰ سال گذشته یا همین حول و حوش، هرچند برخی ابزارهای خانگی که از نمونه های قابل ذکر آن می توان جعبه های بازی های ویدیویی را که بعدها در دستگاههای دیگری از جمله تلفن همراه، دوربین های ضبط ویدیویی، و PDAها و دهها هزار وسیله خانگی، صنعتی، خودروسازی و تمام ابزاری که در درون آنها مدارهایی که نیازهای ماشین تورینگ را مهیا ساخته اند، گسترش یافت، را نام برد(اغلب این لوازم برنامه هایی را در خود دارند که بصورت ثابت روی ROM تراشه هایی که برای تغییر نیاز به تعویض دارند،نگاشته شده اند). این رایانه ها که در درون ابزارهای با کاربرد ویژه گنجانیده شده اند «ریزکنترل گرها» یا «رایانه های توکار» (Embedded Computers) نامیده می شوند. بنابراین تعریف این رایانه ها به عنوان ابزاری که با هدف پردازش اطلاعات طراحی گردیده محدودیتهایی دارد. بیشتر می توان آنها را به ماشینهایی تشبیه کرد که در یک مجموعه بزرگ تر به عنوان یک بخش حضور دارند مانند دستگاههای تلفن، ماکروفرها و یا هواپیما که این رایانه ها بدون تغییر فیزیکی توسط کاربر می توانند برای مقاصد مختلفی بکارگرفته شوند.
● رایانه های شخصی
درآخر، اشخاصی که با انواع دیگری از رایانه ها ناآشنا هستند از عبارت رایانه برای رجوع به نوع خاصی که رایانه شخصی (PCها) نامیده می شوند استفاده می کنند.
▪ بقیه انواع کامپیوتر در زیر نمایش داده شده اند:
ـ رایانه آنالوگ
ـ رایانه ضربانی
ـ ریزرایانه
ـ رایانه خانگی
ـ رایانه شخصی
ـ خادم یا server
ـ رایانه کوچک
ـ رایانه پردازنده مرکزی
ـ ابررایانه
ـ رایانه کوانتومی
منبع : نیک سیستم
نظرات شما عزیزان:
برچسبها: